package ar.edu.itba.it.paw.repo;

import java.util.List;


import ar.edu.itba.it.paw.domain.Category;
import ar.edu.itba.it.paw.domain.OrderProducts;
import ar.edu.itba.it.paw.domain.Product;
import ar.edu.itba.it.paw.domain.Question;
import ar.edu.itba.it.paw.domain.User;


public interface ProductRepo {

	public List<Product> getAllProducts(OrderProducts order);
	
	public List<Product> getAllProducts(OrderProducts order, Category category);
	
	public List<Product> getAllProducts();
	
	public List<Product> getOtherUserProducts(User user);
	
	public List<Product> getProductsByCategory(Category category);
	
	public List<Product> getVisitedProducts(int quantity);
	
	public void addProduct(Product product);
	
	//public void editProduct(Product product);
	
//	public void addTransaction(Transaction transaction);
	
	public Product getProduct(int product_id);
	
	public void deleteProduct(Product product);

//	public List<Question> getQuestions(Product product);
	
//	public List<Question> getQuestions(User user);
	
	public Question getQuestion(int id);
	
//	public void addQuestion(Question question);
	
//	public void addOffer(Offer offer);
	
//	public List<Product> getBoughtProducts(User user);
	
//	public List<Product> getSoldProducts(User user);
}
